package dao.v2;

import java.util.List;

import org.apache.ibatis.annotations.Param;

import model.LogOrder;
import model.MemberVO;
import model.OrderTimer;
import model.UorderCaseVO;
import model.UorderGoodVO;
import model.UorderVO;

public interface UorderVOMapper {
	
	List<UorderVO> getOrderList(UorderVO orderVO);
	
	int getTotal(UorderVO orderVO);
	
	List<OrderTimer> getOrderListTimer(String member_id);
	
	int updOrderCaseNoPay(String order_id);
	
	UorderVO getOneOrderById(String order_id);
	
	UorderVO getOrderDetails(String order_id);
	
	UorderCaseVO getOrderCaseById(String case_id);
	
	void updOrderCaseStateByCaseId(@Param("case_id")String case_id,@Param("cancel_reason")String cancel_reason);
	
	List<LogOrder> getCancelCaseLog(String case_id);

	int updOrderCaseState(@Param("case_id")String case_id,@Param("org_state")String org_state, @Param("new_state")String new_state);

	int updOrderStateWhenConfirm(@Param("order_id")String order_id);

	List<UorderGoodVO> getOrderGoodByCaseId(String case_id);

	List<UorderGoodVO> getCaseEvaluate(String case_id);

	void updOrderGoodEvaluate(UorderGoodVO orderGood);

	void checkOrderEvaluate(String case_id);

	List<UorderGoodVO> getCaseEvaluateAfterSub(@Param("order_good_id")String order_good_id,@Param("case_id")String case_id);

	void checkTotalEvaluate(String case_id);

	List<OrderTimer> getOverDueTimer(@Param("member_id")String member_id);

	void updOrderTimerOpenYn(@Param("id")String id, @Param("open_yn")String open_yn);

	void delTimerByCaseIdAndType(@Param("case_id")String case_id, @Param("type")String type);

	UorderVO getConfirmMsg(String case_id);

	OrderTimer getCaseOverTimerByIdAndType(@Param("timer_id")String timer_id, @Param("type")String type);

	List<UorderVO> getDeliverAssist(String member_id);

	void getCaseRecieveTime(String id);

	OrderTimer getTimerOrderByCaseId(@Param("case_id")String case_id, @Param("type")String type);

	List<UorderVO> getCaseCount(@Param("member_id")String member_id, @Param("lang")String lang);
	
}
